import type { App } from 'vue';
import ZwUnityKitCertificateUploadInstall, { ZwUnityKitCertificateUpload } from './ZwUnityKitCertificateUpload/index';
import ZwUnityKitSelectInstall, { ZwUnityKitSelect } from './ZwUnityKitSelect/index';
import ZwUnityKitProfessionSelectInstall, { ZwUnityKitProfessionSelect } from './ZwUnityKitProfessionSelect/index';
import ZwUnityKitCascaderInstall, { ZwUnityKitCascader } from './ZwUnityKitCascader/index';
import ZwUnityKitInputNumberInstall, { ZwUnityKitInputNumber } from './ZwUnityKitInputNumber/index';
import ZwUnityKitDatePickerInstall, { ZwUnityKitDatePicker } from './ZwUnityKitDatePicker/index';

const components = [
    ZwUnityKitCertificateUploadInstall,
    ZwUnityKitSelectInstall,
    ZwUnityKitProfessionSelectInstall,
    ZwUnityKitCascaderInstall,
    ZwUnityKitInputNumberInstall,
    ZwUnityKitDatePickerInstall
];

const install = (app: App, options: any) => {
    app.config.globalProperties.$domainApi = options.domainApi || 'https://payhub-api-dev.keyid.cn';
    components.forEach((component: any) => app.use(component, options));
};

export {
    ZwUnityKitCertificateUpload,
    ZwUnityKitSelect,
    ZwUnityKitCascader,
    ZwUnityKitInputNumber,
    ZwUnityKitDatePicker,
    ZwUnityKitProfessionSelect
};
export default { install };
